home
***
CD-ROM
|
disk
|
FTP
|
other
***
search
/
Software Vault: The Gold Collection
/
Software Vault - The Gold Collection (American Databankers) (1993).ISO
/
cdr26
/
pwrutls2.zip
/
ANSIKEY.BAT
< prev
next >
Wrap
DOS Batch File
|
1993-06-03
|
3KB
|
80 lines
@ECHO OFF
REM This is ANSIKEY.BAT
REM This won't work unless ANSI.SYS is loaded and KEY.COM is handy!
REM It will work with ALL keys EXCEPT the GREY arrow keys,
REM GREY Home/End, GREY Page Up/Down, and GREY Ins/Del.
SET OP=%PROMPT%
FOR %%A IN (F S ST YN CR EX1 EX2) DO SET %%A=
IF %1!==! GOTO NOSTRING
SET ST=%1
:TOP
SHIFT
IF %1!==! GOTO DONE
SET ST=%ST% %1
GOTO TOP
:DONE
ECHO Press the key you want to assign %ST% to . . .
KEY
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 SET EX1=Y
IF NOT %EX1%!==Y! GOTO SKIP
ECHO Please verify this by pressing that key again . . .
KEY /F
:SKIP
FOR %%A IN (0 1) DO IF ERRORLEVEL %%A00 SET F=%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %F%%%A0 SET F=%F%%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %F%%%A SET F=%F%%%A
IF %EX1%!==Y! SET F=0;%F%
ECHO Do you want a carriage return at the end of %ST% (Y/N)?
KEY
IF ERRORLEVEL 121 IF NOT ERRORLEVEL 122 SET CR=;13
IF ERRORLEVEL 89 IF NOT ERRORLEVEL 90 SET CR=;13
ECHO ON
PROMPT $E[%F%;"%ST%"%CR%p
GOTO RESET
:NOSTRING
ECHO Press the key you want to change . . .
KEY
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 SET EX1=Y
IF NOT %EX1%!==Y! GOTO SKIP2
ECHO Please verify this by pressing that key again . . .
KEY /F
:SKIP2
FOR %%A IN (0 1) DO IF ERRORLEVEL %%A00 SET F=%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %F%%%A0 SET F=%F%%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %F%%%A SET F=%F%%%A
IF %EX1%!==Y! SET F=0;%F%
ECHO Okay, now press the key you want to change it to . . .
KEY
IF ERRORLEVEL 0 IF NOT ERRORLEVEL 1 SET EX2=Y
IF NOT %EX2%!==Y! GOTO SKIP3
ECHO Please verify this by pressing that key again . . .
KEY /F
:SKIP3
FOR %%A IN (0 1) DO IF ERRORLEVEL %%A00 SET S=%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %S%%%A0 SET S=%S%%%A
FOR %%A IN (0 1 2 3 4 5 6 7 8 9) DO IF ERRORLEVEL %S%%%A SET S=%S%%%A
IF %EX2%!==Y! SET S=0;%S%
ECHO ON
PROMPT $E[%F%;%S%p
PROMPT $E[10;13p
:RESET
SET PROMPT=%OP%
@ECHO OFF
CLS
IF NOT EXIST RESET.BAT GOTO WIPEIT
ECHO Do you want to AVOID wiping out your existing RESET batch file (Y/N)?
KEY
IF ERRORLEVEL 121 IF NOT ERRORLEVEL 122 GOTO CONTIN
IF ERRORLEVEL 89 IF NOT ERRORLEVEL 90 GOTO CONTIN
:WIPEIT
ECHO @ECHO ON > RESET.BAT
:CONTIN
ECHO @PROMPT $E[%F%;%F%p >> RESET.BAT
ECHO. >> RESET.BAT
REM Spacing of next line is critical!
ECHO @SET PROMPT=%OP%>> RESET.BAT
ECHO @ECHO Key with code %F% now reset. >> RESET.BAT
ECHO Key with code %F% now redefined; type RESET to restore it.
:END
FOR %%A IN (F S ST YN CR OP EX1 EX2) DO SET %%A=